.. _cmlDoGetOne: cmlDoGetOne ================================ -------------------------------- SYNOPSYS ````````````` .. code-block:: none VT_I4 cmlDoGetOne ([in] VT_I4 BoardID, [in] VT_I4 Axis, [in] VT_I4 Channel, [out] VT_PI4 OutState ) DESCRIPTION ````````````` - 모션 디지털 출력이 지원되는 제품에서 cmlDoPutOne() 함수는 단일 채널에 대한 디지털 출력 상태를 발생시키며, cmlDoGetOne () 함수는 단일 채널에 대한 디지털 출력 상태를 반환합니다. \ - 이 함수의 사용과 호출에 있어, 제공된 ㈜커미조아의 함수 헤더 Visual Basic 에서는 함수의 첨두어 cml 가 붙지 않습니다. PARAMETER ````````````` ▶ BoardID : 사용자가 설정한 디바이스(보드) ID. ▶ Axis: Axis 번호(Axis는 3번 부터 시작합니다.) ▶ Channel : 채널 번호. 통합 채널로 관리되는 채널 번호를 의미하며, 상수 값으로 0 (Zero Based) 이상, 최대 통합 채널수 - 1 이하의 값을 채널 번호로 설정할 수 있습니다. ▶ OutState : 단일 채널에 대한 디지털 출력 상태를 발생 혹은 출력 상태를 반환합니다 .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 0 (cmlFALSE), OFF 1 (cmlTRUE), ON RETURN VALUE ````````````` .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 음수, 수행 실패 0(ERR_NONE), 수행 성공 EXAMPLE ``````````````` .. code-block:: c++ :linenos: :emphasize-lines: 5 C/C++ #include “ComiMLink2_SDK.h” #include “ComiMLink2_SDK_Def.h” #define DI_CH 0 #define DI_ON 1 Long BoardID = 0; // 0번 채널의 디지털 출력 상태를 1(ON)으로 설정. if (cmlDoPutOne (BoardID, 0, DI_CH, DI_ON ) != ERR_NONE ) { OutputDebugString ( " cmlDoPutOne function Fail" ); } // 0번 채널의 디지털 출력 상태를 반환합니다. Long nGetDoOneState = 0; if(cmlDoGetOne (BoardID, 0, DI_CH, &nGetDoOneState ) != ERR_NONE ) { OutputDebugString ( " cmlDoGetOne function Fail" ); } // cmlDoGetOne () 함수에 의해 읽어 본 0번 채널의 입력 상태 값을 // 실제 설정한 값(1)과 비교합니다. if ( nGetDoOneState != 1 ) { OutputDebugString ( " cmlDoGetOne function don't set Correctly" ); }